﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PetaPoco;

namespace BrnMall.Manager.Domain.WeApp
{
    /// <summary>
    /// 小程序授权信息
    /// </summary>
    [TableName("weapp_authorization")]
    public class AppAuthorization
    {
        /// <summary>
        /// 
        /// </summary>
        public int Id { get; set; }
        /// <summary>
        /// 授权方昵称
        /// </summary>
        public string Nick_Name { get; set; }
        /// <summary>
        /// 授权方头像
        /// </summary>
        public string Head_Img { get; set; }
        /// <summary>
        /// 授权方公众号类型，0代表订阅号，1代表由历史老帐号升级后的订阅号，2代表服务号
        /// </summary>

        public int Service_Type_Info { get; set; }
        /// <summary>
        /// 授权方认证类型，-1代表未认证，0代表微信认证，1代表新浪微博认证，2代表腾讯微博认证，3代表已资质认证通过但还未通过名称认证，4代表已资质认证通过、还未通过名称认证，但通过了新浪微博认证，5代表已资质认证通过、还未通过名称认证，但通过了腾讯微博认证
        /// </summary>
        public int Verify_Type_Info { get; set; }

        /// <summary>
        /// 小程序的原始ID
        /// </summary>
        public string User_Name { get; set; }
        /// <summary>
        /// 帐号介绍
        /// </summary>
        public string Signature { get; set; }
        /// <summary>
        /// 小程序的主体名称
        /// </summary>
        public string Principal_Name { get; set; }
        /// <summary>
        /// 二维码图片的URL
        /// </summary>
        public string Qrcode_Url { get; set; }


        /// <summary>
        /// 授权方appid
        /// </summary>
        public string Authorizer_Appid { get; set; }
        /// <summary>
        /// 授权方接口调用凭据（在授权的公众号或小程序具备API权限时，
        /// 才有此返回值），也简称为令牌
        /// </summary>
        public string Authorizer_Access_Token { get; set; }
        /// <summary>
        /// 有效期（在授权的公众号或小程序具备API权限时，才有此返回值）
        /// </summary>
        public DateTime Expires_In { get; set; }
        /// <summary>
        /// 接口调用凭据刷新令牌（在授权的公众号具备API权限时，
        /// 才有此返回值），刷新令牌主要用于第三方平台获取和刷新已授权用户的access_token，
        /// 只会在授权时刻提供，请妥善保存。 一旦丢失，只能让用户重新授权，才能再次拿到新的刷新令牌
        /// </summary>
        public string Authorizer_Refresh_Token { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public AppAuthorization()
        {
            Nick_Name = Head_Img = User_Name = Signature = Principal_Name = Qrcode_Url
                = Authorizer_Appid = Authorizer_Access_Token = Authorizer_Refresh_Token = string.Empty;
            Service_Type_Info = Verify_Type_Info = 0;
            Expires_In=DateTime.Now;
        }
    }
}
